package com.bwie.shop.mapper;

import com.bwie.common.domain.Shop;
import com.bwie.common.domain.request.ShopListRequest;
import com.bwie.common.domain.response.ShopListResponse;

import java.util.List;

/**
 * @author liuwenliang
 * @version 1.0
 * @date 2025/9/9
 */
public interface ShopMapper {
    /**
     * 店铺列表分页
     * @param shopListRequest
     * @return 列表
     */
    List<ShopListResponse> getShopList(ShopListRequest shopListRequest);

    /**
     * 店铺名称唯一性校验
     * @param shopName
     * @return
     */
    int selectOneShopNameByShopName(String shopName);

    /**
     * 店铺入驻
     * @param shop 店铺信息
     */
    void storeEntry(Shop shop);

    /**
     * 根据用户编号查询该用户拥有的角色
     * @param id 用户编号
     * @return 角色编号
     */
    List<Integer> getUserRolesByUserId(Integer id);

    /**
     * 更改店铺状态为已续约
     * @param shopId 店铺编号
     */
    void updateStatusByShopId(Integer shopId);
}
